{"cells":[{"cell_type":"markdown","id":"adolescent-davis","metadata":{"id":"adolescent-davis"},"source":["## Basic Steps\n","\n","1. Run a baseline training script to build a speech commands model.\n","2. Add in your custom word to the training and test/validation sets.\n","   - Modify labels, shape of your output tensor in the model.\n","   - Make sure that feature extractor for the model aligns with the feature extractor \n","     used in the arduino code.\n","3. Re-train model. => TF Model using floating-point numbers, that recognizes Google word and custom word.\n","4. Quantize the model and convert to TFlite. => keyword_model.tflite file\n","5. Convert tflite to .c file, using xxd => model_data.cc\n","6. Replace contents of existing micro_features_model.cpp with output of xxd.\n","\n","All of the above steps are done in this notebook for the commands 'left', 'right'.\n","\n","7. In micro_speech.ino, modify micro_op_resolver (around line 80) to add any necessary operations (DIFF_FROM_LECTURE)\n","8. In micro_features_model_settings.h, modify kSilenceIndex and kUnknownIndex, depending on \n","where you have them in commands.  \n","  - Commands = ['left', 'right', '_silence', '_unknown'] => kSilenceIndex=2, kUnknownIndex=3\n","9. In micro_features_model_settings.cpp, modify kCategoryLabels to correspond to commands in this script.\n","10. In micro_features_micro_model_settings.h, set kFeatureSliceDurationMs, kFeatureSliceStrideMs to match what is passed to microfrontend as window_size, window_step, respectively.\n","11. Rebuild Arduino program, run it, recognize the two target words.\n","12. Experiment with model architecture, training parameters/methods, augmentation, more data-gathering, etc.\n","\n","*Note*:  As of 5/3/21, this model uses 22% of flash and 49.5% of RAM, so there is substantial space to improve the model, but the latency is about 208ms, which is probably too slow."]},{"cell_type":"code","execution_count":null,"id":"undefined-familiar","metadata":{"id":"undefined-familiar","executionInfo":{"status":"ok","timestamp":1650757484611,"user_tz":240,"elapsed":165,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"0425ca48-6be6-4388-a9ae-12e708f892ea","colab":{"base_uri":"https://localhost:8080/"}},"outputs":[{"output_type":"stream","name":"stdout","text":["2.8.0\n"]}],"source":["# TensorFlow and tf.keras\n","import tensorflow as tf\n","from tensorflow.keras import Input, layers\n","from tensorflow.keras import models\n","from tensorflow.keras.layers.experimental import preprocessing\n","from tensorflow.lite.experimental.microfrontend.python.ops import audio_microfrontend_op as frontend_op\n","print(tf.__version__)\n","\n","# Helper libraries\n","import numpy as np\n","import matplotlib.pyplot as plt\n","import seaborn as sns\n","\n","from tqdm.notebook import tqdm\n","# from tqdm import tqdm # replace with this if moving out of notebook\n","\n","import os\n","import pathlib\n","\n","from datetime import datetime as dt\n","\n","from IPython import display"]},{"cell_type":"code","execution_count":null,"id":"bearing-lobby","metadata":{"id":"bearing-lobby"},"outputs":[],"source":["# Set seed for experiment reproducibility\n","seed = 42\n","tf.random.set_seed(seed)\n","np.random.seed(seed)"]},{"cell_type":"code","execution_count":null,"id":"incredible-numbers","metadata":{"id":"incredible-numbers"},"outputs":[],"source":["i16min = -2**15\n","i16max = 2**15-1\n","fsamp = 16000\n","wave_length_ms = 1000\n","wave_length_samps = int(wave_length_ms*fsamp/1000)\n","window_size_ms=60\n","window_step_ms=40\n","num_filters = 32\n","use_microfrontend = True\n","dataset = 'mini-speech'\n","# dataset = 'full-speech-ds' # use the full speech commands as a pre-built TF dataset \n","# dataset = 'full-speech-files' # use the full speech commands stored as files \n","\n","silence_str = \"_silence\"  \n","unknown_str = \"_unknown\"\n","EPOCHS = 25"]},{"cell_type":"markdown","id":"outstanding-movement","metadata":{"id":"outstanding-movement"},"source":["Apply the frontend to an example signal."]},{"cell_type":"code","source":["# Download the mini_speech dataset\n","\n","# DATASET_PATH = 'data/mini_speech_commands'\n","if dataset == \"mini-speech\":\n","  DATASET_PATH = 'data/mini_speech_commands'\n","  data_dir = pathlib.Path(DATASET_PATH)\n","  if not data_dir.exists():\n","    tf.keras.utils.get_file(\n","        'mini_speech_commands.zip',\n","        origin=\"http://storage.googleapis.com/download.tensorflow.org/data/mini_speech_commands.zip\",\n","        extract=True, cache_dir='.', cache_subdir='data')\n","\n","#Download the speech_commands dataset\n","if dataset == \"full-speech-files\":\n","  DATASET_PATH = 'data/speech_commands_files_0.2'\n","\n","  data_dir = pathlib.Path(DATASET_PATH)\n","  if not data_dir.exists():\n","    tf.keras.utils.get_file(\n","        'speech_commands_v0.02.tar.gz',\n","        origin=\"http://download.tensorflow.org/data/speech_commands_v0.02.tar.gz\",\n","        # origin=\"http://storage.googleapis.com/download.tensorflow.org/data/mini_speech_commands.zip\",\n","        extract=True, cache_dir='.', cache_subdir='data/speech_commands_files_0.2')\n","  "],"metadata":{"id":"lShxgo1F6P09"},"id":"lShxgo1F6P09","execution_count":null,"outputs":[]},{"cell_type":"code","execution_count":null,"id":"rising-oracle","metadata":{"id":"rising-oracle"},"outputs":[],"source":["commands = ['bamboozle', 'right'] \n","if dataset == 'mini-speech':\n","  data_dir = pathlib.Path(os.path.join('data/mini_speech_commands'))\n","  if not data_dir.exists():\n","    tf.keras.utils.get_file('mini_speech_commands.zip',\n","          origin=\"http://storage.googleapis.com/download.tensorflow.org/data/mini_speech_commands.zip\",\n","          extract=True, cache_dir='.', cache_subdir='data')\n","  # commands = np.array(tf.io.gfile.listdir(str(data_dir))) # if you want to use all the command words\n","  # commands = commands[commands != 'README.md']\n","elif dataset == 'full-speech-files':\n","  # data_dir = '/dfs/org/Holleman-Coursework/data/speech_dataset'\n","  data_dir = pathlib.Path(os.path.join('data/speech_commands_files_0.2'))\n","\n","elif dataset == 'full-speech-ds':\n","    raise RuntimeError(\"full-speech-ds is not really supported yet\")"]},{"cell_type":"code","execution_count":null,"id":"2e571f98-2d10-4809-ae2e-abd8d202181a","metadata":{"id":"2e571f98-2d10-4809-ae2e-abd8d202181a","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757485083,"user_tz":240,"elapsed":15,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"15ad144c-80e9-4cf9-9289-6264128c9000"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["PosixPath('data/mini_speech_commands')"]},"metadata":{},"execution_count":37}],"source":["data_dir"]},{"cell_type":"code","execution_count":null,"id":"precious-graph","metadata":{"id":"precious-graph","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757485084,"user_tz":240,"elapsed":14,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"15fd0fa6-e669-4771-a3ec-0f4faa4152ed"},"outputs":[{"output_type":"stream","name":"stdout","text":["label_list: ['_silence', '_unknown', 'bamboozle', 'right']\n"]}],"source":["label_list = commands.copy()\n","label_list.insert(0, silence_str)\n","label_list.insert(1, unknown_str)\n","print('label_list:', label_list)"]},{"cell_type":"code","execution_count":null,"id":"e08637a7-35d4-493c-b3c9-31ea358de82d","metadata":{"id":"e08637a7-35d4-493c-b3c9-31ea358de82d","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757485084,"user_tz":240,"elapsed":11,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"33773025-9fc2-4fd1-d145-35676de9226f"},"outputs":[{"output_type":"stream","name":"stdout","text":["bamboozle  down  go  left  no  README.md  right  stop  up  yes\n"]}],"source":["!ls $data_dir/"]},{"cell_type":"code","execution_count":null,"id":"surprising-adjustment","metadata":{"scrolled":true,"id":"surprising-adjustment","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757485253,"user_tz":240,"elapsed":173,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"81fae9f1-17d1-4a4e-b498-58ec04e48699"},"outputs":[{"output_type":"stream","name":"stdout","text":["Number of total examples: 8432\n","Example file tensor: tf.Tensor(b'data/mini_speech_commands/right/b87bdb22_nohash_4.wav', shape=(), dtype=string)\n"]}],"source":["if dataset == 'mini-speech' or dataset == 'full-speech-files':\n","    filenames = tf.io.gfile.glob(str(data_dir) + '/*/*.wav') \n","    # with the next commented-out line, you can choose only files for words in label_list\n","    # filenames = tf.concat([tf.io.gfile.glob(str(data_dir) + '/' + cmd + '/*') for cmd in label_list], 0)\n","    filenames = tf.random.shuffle(filenames)\n","    num_samples = len(filenames)\n","    print('Number of total examples:', num_samples)\n","    # print('Number of examples per label:',\n","    #       len(tf.io.gfile.listdir(str(data_dir/commands[0]))))\n","    print('Example file tensor:', filenames[0])"]},{"cell_type":"code","execution_count":null,"id":"ranging-version","metadata":{"id":"ranging-version","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757485254,"user_tz":240,"elapsed":15,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"dba16760-10e7-4153-879b-d724a3b93d73"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["<tf.Tensor: shape=(8432,), dtype=string, numpy=\n","array([b'data/mini_speech_commands/right/b87bdb22_nohash_4.wav',\n","       b'data/mini_speech_commands/no/763188c4_nohash_0.wav',\n","       b'data/mini_speech_commands/left/cb8f8307_nohash_4.wav', ...,\n","       b'data/mini_speech_commands/no/7fd25f7c_nohash_3.wav',\n","       b'data/mini_speech_commands/go/e6be0830_nohash_3.wav',\n","       b'data/mini_speech_commands/left/f17be97f_nohash_3.wav'],\n","      dtype=object)>"]},"metadata":{},"execution_count":41}],"source":["filenames\n","# tf.strings.split(filenames[0], os.path.sep)[-2].numpy().decode('utf8')"]},{"cell_type":"code","execution_count":null,"id":"assured-capture","metadata":{"id":"assured-capture","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757485255,"user_tz":240,"elapsed":12,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"f98d724d-0ee4-445b-c432-18eec46e67b5"},"outputs":[{"output_type":"stream","name":"stdout","text":["data/mini_speech_commands/right/b87bdb22_nohash_4.wav\n","data/mini_speech_commands/no/763188c4_nohash_0.wav\n","data/mini_speech_commands/left/cb8f8307_nohash_4.wav\n","data/mini_speech_commands/up/2a0b413e_nohash_0.wav\n","data/mini_speech_commands/down/bf5d409d_nohash_0.wav\n","data/mini_speech_commands/right/422f8cf1_nohash_1.wav\n","data/mini_speech_commands/right/eee9b9e2_nohash_2.wav\n","data/mini_speech_commands/bamboozle/bamboozle_a_3_shift_2.wav\n","data/mini_speech_commands/stop/6166ae21_nohash_0.wav\n","data/mini_speech_commands/no/dce05676_nohash_0.wav\n"]}],"source":["# Not really necessary, but just look at a few of the files to make sure that \n","# they're the correct files, shuffled, etc.\n","for i in range(10):\n","    print(filenames[i].numpy().decode('utf8'))"]},{"cell_type":"code","execution_count":null,"id":"printable-nevada","metadata":{"id":"printable-nevada","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757485630,"user_tz":240,"elapsed":383,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"43170d1b-e38b-4db4-de67-a6d9e2ed059f"},"outputs":[{"output_type":"stream","name":"stdout","text":["Using mini-speech\n","Training set size 6745\n","Validation set size 843\n","Test set size 844\n"]}],"source":["if dataset == 'mini-speech':\n","  print('Using mini-speech')\n","  num_train_files = int(0.8*num_samples) \n","  num_val_files = int(0.1*num_samples) \n","  num_test_files = num_samples - num_train_files - num_val_files\n","  train_files = filenames[:num_train_files]\n","  val_files = filenames[num_train_files: num_train_files + num_val_files]\n","  test_files = filenames[-num_test_files:]\n","elif dataset == 'full-speech-files':  \n","  # the full speech-commands set lists which files are to be used\n","  # as test and validation data; train with everything else\n","  fname_val_files = os.path.join(data_dir, 'validation_list.txt')    \n","  with open(fname_val_files) as fpi_val:\n","    val_files = fpi_val.read().splitlines()\n","  # validation_list.txt only lists partial paths\n","  val_files = [os.path.join(data_dir, fn) for fn in val_files]\n","  fname_test_files = os.path.join(data_dir, 'testing_list.txt')\n","\n","  with open(fname_test_files) as fpi_tst:\n","    test_files = fpi_tst.read().splitlines()\n","  # testing_list.txt only lists partial paths\n","  test_files = [os.path.join(data_dir, fn).rstrip() for fn in test_files]    \n","\n","  # convert the TF tensor filenames into an array of strings so we can use basic python constructs\n","  train_files = [f.decode('utf8') for f in filenames.numpy()]\n","  # don't train with the _background_noise_ files; exclude when directory name starts with '_'\n","  train_files = [f for f in train_files if f.split('/')[-2][0] != '_']\n","  # validation and test files are listed explicitly in *_list.txt; train with everything else\n","  train_files = list(set(train_files) - set(test_files) - set(val_files))\n","  # now convert back into a TF tensor so we can use the tf.dataset pipeline\n","  train_files = tf.constant(train_files)    \n","  print(\"full-speech-files is in progress.  Good luck!\")\n","elif dataset == 'full-speech-ds':  \n","    print(\"Using full-speech-ds. This is in progress.  Good luck!\")\n","else:\n","  raise ValueError(\"dataset must be either full-speech-files, full-speech-ds or mini-speech\")\n","print('Training set size', len(train_files))\n","print('Validation set size', len(val_files))\n","print('Test set size', len(test_files))"]},{"cell_type":"code","execution_count":null,"id":"connected-polish","metadata":{"id":"connected-polish"},"outputs":[],"source":["def decode_audio(audio_binary):\n","  audio, _ = tf.audio.decode_wav(audio_binary)\n","  return tf.squeeze(audio, axis=-1)"]},{"cell_type":"code","execution_count":null,"id":"third-leave","metadata":{"id":"third-leave"},"outputs":[],"source":["# @tf.function\n","def get_label(file_path):\n","  parts = tf.strings.split(file_path, os.path.sep)\n","  in_set = tf.reduce_any(parts[-2] == label_list)\n","  label = tf.cond(in_set, lambda: parts[-2], lambda: tf.constant(unknown_str))\n","  # print(f\"parts[-2] = {parts[-2]}, in_set = {in_set}, label = {label}\")\n","  # Note: You'll use indexing here instead of tuple unpacking to enable this \n","  # to work in a TensorFlow graph.\n","  return  label # parts[-2]"]},{"cell_type":"code","execution_count":null,"id":"false-cambodia","metadata":{"id":"false-cambodia"},"outputs":[],"source":["def get_waveform_and_label(file_path):\n","  label = get_label(file_path)\n","  audio_binary = tf.io.read_file(file_path)\n","  waveform = decode_audio(audio_binary)\n","  return waveform, label"]},{"cell_type":"code","execution_count":null,"id":"injured-december","metadata":{"id":"injured-december"},"outputs":[],"source":["def get_spectrogram(waveform):\n","  # Concatenate audio with padding so that all audio clips will be of the \n","  # same length (16000 samples)\n","  zero_padding = tf.zeros([wave_length_samps] - tf.shape(waveform), dtype=tf.int16)\n","  waveform = tf.cast(0.5*waveform*(i16max-i16min), tf.int16)  # scale float [-1,+1]=>INT16\n","  equal_length = tf.concat([waveform, zero_padding], 0)\n","  ## Make sure these labels correspond to those used in micro_features_micro_features_generator.cpp\n","  spectrogram = frontend_op.audio_microfrontend(equal_length, sample_rate=fsamp, num_channels=num_filters,\n","                                    window_size=window_size_ms, window_step=window_step_ms)\n","  return spectrogram\n"]},{"cell_type":"markdown","id":"competent-newark","metadata":{"id":"competent-newark"},"source":["Function to convert each waveform in a set into a spectrogram, then convert those\n","back into a dataset using `from_tensor_slices`.  (We should be able to use \n","`wav_ds.map(get_spectrogram_and_label_id)`, but there is a problem with that process).\n","   "]},{"cell_type":"code","execution_count":null,"id":"normal-productivity","metadata":{"id":"normal-productivity"},"outputs":[],"source":["def create_silence_dataset(num_waves, samples_per_wave, rms_noise_range=[0.01,0.2], silent_label=silence_str):\n","    # create num_waves waveforms of white gaussian noise, with rms level drawn from rms_noise_range\n","    # to act as the \"silence\" dataset\n","    rng = np.random.default_rng()\n","    rms_noise_levels = rng.uniform(low=rms_noise_range[0], high=rms_noise_range[1], size=num_waves)\n","    rand_waves = np.zeros((num_waves, samples_per_wave), dtype=np.float32) # pre-allocate memory\n","    for i in range(num_waves):\n","        rand_waves[i,:] = rms_noise_levels[i]*rng.standard_normal(samples_per_wave)\n","    labels = [silent_label]*num_waves\n","    return tf.data.Dataset.from_tensor_slices((rand_waves, labels))  "]},{"cell_type":"code","execution_count":null,"id":"awful-national","metadata":{"id":"awful-national"},"outputs":[],"source":["def wavds2specds(waveform_ds, verbose=True):\n","  wav, label = next(waveform_ds.as_numpy_iterator())\n","  one_spec = get_spectrogram(wav)\n","  one_spec = tf.expand_dims(one_spec, axis=0)  # add a 'batch' dimension at the front\n","  one_spec = tf.expand_dims(one_spec, axis=-1) # add a singleton 'channel' dimension at the back    \n","\n","  num_waves = 0 # count the waveforms so we can allocate the memory\n","  for wav, label in waveform_ds:\n","    num_waves += 1\n","  print(f\"About to create spectrograms from {num_waves} waves\")\n","  spec_shape = (num_waves,) + one_spec.shape[1:] \n","  spec_grams = np.nan * np.zeros(spec_shape)  # allocate memory\n","  labels = np.nan * np.zeros(num_waves)\n","  idx = 0\n","  for wav, label in waveform_ds:    \n","    if verbose and idx % 250 == 0:\n","      print(f\"\\r {idx} wavs processed\", end='')\n","    spectrogram = get_spectrogram(wav)\n","    # TF conv layer expect inputs structured as 4D (batch_size, height, width, channels)\n","    # the microfrontend returns 2D tensors (freq, time), so we need to \n","    spectrogram = tf.expand_dims(spectrogram, axis=0)  # add a 'batch' dimension at the front\n","    spectrogram = tf.expand_dims(spectrogram, axis=-1) # add a singleton 'channel' dimension at the back\n","    spec_grams[idx, ...] = spectrogram\n","    new_label = label.numpy().decode('utf8')\n","    new_label_id = np.argmax(new_label == np.array(label_list))    \n","    labels[idx] = new_label_id # for numeric labels\n","    # labels.append(new_label) # for string labels\n","    idx += 1\n","  labels = np.array(labels, dtype=int)\n","  output_ds = tf.data.Dataset.from_tensor_slices((spec_grams, labels))  \n","  return output_ds"]},{"cell_type":"code","execution_count":null,"id":"appropriate-circus","metadata":{"id":"appropriate-circus","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757512785,"user_tz":240,"elapsed":27160,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"ac9c34ad-9a6b-488d-fa14-c94b5e8353ad"},"outputs":[{"output_type":"stream","name":"stdout","text":["About to create spectrograms from 6745 waves\n"," 6500 wavs processed"]}],"source":["AUTOTUNE = tf.data.experimental.AUTOTUNE\n","num_train_files = len(train_files)\n","files_ds = tf.data.Dataset.from_tensor_slices(train_files)\n","waveform_ds = files_ds.map(get_waveform_and_label, num_parallel_calls=AUTOTUNE)\n","train_ds = wavds2specds(waveform_ds)"]},{"cell_type":"code","execution_count":null,"id":"objective-consideration","metadata":{"scrolled":true,"id":"objective-consideration","colab":{"base_uri":"https://localhost:8080/","height":716},"executionInfo":{"status":"ok","timestamp":1650757514395,"user_tz":240,"elapsed":1631,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"a3e490ae-23df-4784-bbba-6fccbca8bf1d"},"outputs":[{"output_type":"display_data","data":{"text/plain":["<Figure size 720x864 with 9 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}}],"source":["rows = 3\n","cols = 3\n","n = rows*cols\n","fig, axes = plt.subplots(rows, cols, figsize=(10, 12))\n","for i, (audio, label) in enumerate(waveform_ds.take(n)):\n","  r = i // cols\n","  c = i % cols\n","  ax = axes[r][c]\n","  ax.plot(audio.numpy())\n","  ax.set_yticks(np.arange(-1.2, 1.2, 0.2))\n","  label = label.numpy().decode('utf-8')\n","  ax.set_title(label)\n","\n","plt.show()"]},{"cell_type":"code","execution_count":null,"id":"positive-honolulu","metadata":{"id":"positive-honolulu","colab":{"base_uri":"https://localhost:8080/","height":145},"executionInfo":{"status":"ok","timestamp":1650757514397,"user_tz":240,"elapsed":15,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"0a583268-cd34-4c9d-b700-af14c803ecb9"},"outputs":[{"output_type":"stream","name":"stdout","text":["Label: right\n","Waveform shape: (16000,)\n","Spectrogram shape: (24, 32)\n","Audio playback\n"]},{"output_type":"display_data","data":{"text/plain":["<IPython.lib.display.Audio object>"],"text/html":["\n","                <audio controls=\"controls\" >\n","                    <source src=\"data:audio/wav;base64,UklGRiR9AABXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAAZGF0YQB9AADv/+//7P/Z/+v/9v/y/+3/5//o/+r/6//m/+n/6f/6/+n/9f/s/+v/5//2//j/5f/0/+7//v/7//T//f///wEA9/8DAAIADgAIAA8AGgATABQAEwAYAA8ADwAGABQAHwAGAAQA/v8DAA4AAQAbAAoADgAYABoAFAAXABoACQAPAA0AEwAMAAwABgAAAAwADwALAAIABwAAAAUA//8ZABEACAAVAPr/GQAIAAMADgARABkADQAVAA4AGAAZABQAEwAWABMAFgAeAB0ACwALACMAHgARABgAHwACAAgABQAMAAAA/f///+//+f/i/+z/5v/v//X/9f/8//b/6//m//b/5//g/9b/7f/d/+D/0v/c/9v/zv/V/8r/2f/W/9n/zf/J/9X/1P/c/9r/3P/j/9z/6//p/+X/5f/l/+v/4//k/+//6v/k//X/9v/y/+//7f/j/+D/6P/o/+P/8//2/+r/8//n/+3/4f/q/93/7f/n/wAA/P/2/////f/4/wIA9f/t//P/8//s/+z/9P/u//T/6v/6/////f8KAAcADAANAPn/BwADAAsADgAOAA8ACwAUAB0AEwAiABMAHAATABwAGgAZAB0AGgAbACQAGAARABQAFwAYABIAIgAXAAwACAAKAA0AEgALAAgAAAAPAP///v8PAAcABgAIAA4ABQAHAA8AFQAfABkAFQASABgAFQATAAcAFAAjABMAFgAgACMAHgAqACoAKQAtADwAJgAVABwAFwAjABYAHQAXABoAJwAiAB8AKAAaABIAEQAgAB8ACwAaAA8ADgAcAAQAGgAFAAkABQD4//3/9P8GAP///f8JAP3//////+7/+f/3/+v/4P/x//r/5v/m/+P/4P/h/+X/3f/g/+f/2v/M/9b/0f/n/+f/4//p/+P/5v/d/+v/5//a/+D/2v/d/97/x//X/+b/4P/e/+b/5f/e/9v/1P/Y/+T/0v/V/9j/3P/T/8f/2P/Y/+f/5v/r/+D/5f/r//f/8//6/wkABgAWAAQACgADAPn/DAD+/x0AEgALAAUAEQAUABIAFwAiACIAAwAMAAoADwAZAB8AFAAWAB4AEwARAAwAAwATABoAGwAUABYAEwAeABEAGgApACAALQAUAB8AKwAoACwA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5v/c/+7/3v/r/+T/4//h//L/7f/1/+P/9/8DANz/+P/r//z/6////+//4v/q//n/8f8CABsACQAbABcAFAD0/wYADgANAAUA9v8HABcACgDq/wQA6f/v/+H/4//h/9v/7P/h/9L/v//i//X/8f/v//7/CAD//wAA7v/6/wMACgD+/+j/4P/v/+3/2/8EACAA/v8XABMAHgAMAPb/DAAJAOj/8f8CAPb//v/4/+//6P/+/wcA9v8EAAsAMAAbABgAFQAqAAUA7f8OAAkADgAMABYACQAUAP//BwD4/wQA9v/9/woAAgAXAPv/9P8qAA8A9v8PAAwAEgD//xYASwAfACIAGgALACkAFgArABkACAA6ABsADwAVAAUAEwATAAoAFwATABgAGAABAAQAAAABAPP/AAACABMAMgAvAA4ADgD+/wcA/f/0//v/5f/9/wsA8//3/wYA6//r/+P/7v/n/+T/AADu/93/1v/s/+n/6v/3//T/BAAKACIAJQANACQAOgAeAAAAGQATABgA+f/+//P///8GAO3/5//z/wIABwDt//j/AQARAAAA5P8KABEAAAD//wMAJgAXACMAGQAGAB0ACQANAAEAAQAFAPn//f8BAAMA5v/s//b/4//Y/+P/8v/2/+v/7v/p/9v/AQDm//P/AQAKABYAJgAjACAAKwAgACkA+/8MABYACQD8//b/AAAVAPb/7//a//P//P/c/+z///8FAPT/7P/o/wgA9f/3/+f/9P/x/xYADgABACAAAgAIAAIADgAWAA4AFgAKABcAHwAbAAcAFAAZAA0A+v/v/+7/6//r/9T/3f/z/wUA8v8TACUAGwAZAC8ALgAwAC0AJAAuACkAGAAgAAUAAgAcAAgAHQD4/+7/9v/l/9v/6f/y/9f/4v/g/+r/+P/Y/+H/8v/U//n/7P/o/wAA6f8CAPH/5f/0/wcA4//S/+T/6//n/+L/6P/n/97/5f/p/9X/2P/q/+T/4P/j/+b/CQAAAOv/7v/6//f/+P/y/wEAGQAbAAEA+/8NAAIACgDp//7/9//y//L/5P/U/+H/1//S/+H/yf/v/9r/6/8CAPX//P/u/+3/BgD9/wIA7//6/w8A9//+//j/GQAdAPT/+P8RACIAMgAZABsAQwBHAEAAHAAoAD0AHQAgABEALgA5AD8AKQAPAB8ANwAtACUAKAAfAC0AFwAuADYAIgAcAB8AGQATACIASwA2ABQAHAAUACcAIAAaACIA9f8RAAUA/v8EAPL/CgACAAQACQASAAQA/v/+/wUA//8IABgAEQACAPn/AAACAAUA+f/s//b/8f/q/+v/8v/t/+X/8f/2//X/8v/5//T//v/8//3/6//N//T/6f/h/9f/xf/z/9r/1//Z/8L/4f/m/+j/0//V/+//9v/d/+3/9//4/wIAFgAeABMAEQAJAAcA/v8KABEAFAAeACgAHwA1AFYAOAAiACwAMAAzACUAPAAkAB0AIwAVAPn/BAAjABYA9f8DACYAIgArAA0AHAAPAAsAGQAOAA8AHQAdABsAFAAPABsADAAGABMADAAUAAgAGAAaABEAFAAaAB0AHQAaAAsACwAlAP//AgD7//f/8/8KAA0A+f8IABIAGgD//xwADgD3//T//v/z/9z/6v/x//H/4v/4//r/+//0//z/+f/t/+T/6f/j/+//1v/H/9T/2//T/9f/0//M/7z/sP/T/8L/w//B/9n/3f/k//z//f/+/wMA9f/o/wcAAwAHAPT/3f/i////AgACAOb/6P/5//v////5//v/7v/s/+j////y/wEA9P/o/+P//v/0/+v/1v/N/9j/xP/Q/8P/0f/I/8X/5v/0/wUA9P/7//z/9v/9/wsAAAAUABQABgACAAMAAAAWAAcAEwD//wcAGgAOAAUABwAFAAUA9f8CABoA/f8TABQAJgAoAC8ANgAPAEQANwAeABgACgAbAPz/AwAbABcAJQAfAAoADAD+//L/7//e/+L/7//l/+P/AAANABIAMwAeAC8APAApABwAPQA4AD4AHgAuABwAHQAcAAYAEQAoAAsABgAfAAwA+f/8//P/4//z//v/+v/t/+//AAAKAAQA/P8KAP//8v/3//3/+v/s/+f/4f/2/wAAAQATAAQADgDz//z/9/8HAPn/+f/x//L/+P8DAP3/+f/y//T/6P/b//H/6//l//H/1v/a//v/+///////CAATAAsAEgAeAAUA/f/v//L/BgAEAAgA9P8GABkADQASAAAAFgALAAQAEgAMABEAJgD4////FQAKACAADwAIAAsAEQAIAP7/CAAbACwAFgAlADAAMgArAB4AIgAzACsAKgAqAAEA9P/y/+3/8f/t/wEAAAD3/xsADgAcAAUADgAWAAUABwASAAsACAAWAAoABADs//n//v/9//P/6f/o/+3/5P/p/9X/3v/Y/wIA+f/7/wQADwASAAwAAgDm/+j/4v/k/9r/5P/k/wAA6P/k/+7/+P/v/wAABwDu//T/+v/4//L/DQAbAA4AIwAnAA8AGgAOAAEA+P/2//n//v/6/+3/+v/v//3/+P/1/wkA8f/1/+n/6f/p//v/AgANAPj/DgARAPL/+P/3/wwA9f/V//H/4v/m/9L/zf/e//n/DAATABEACQAKAAsA9f/s/xQACAAbABQA/P8PAP//BgAPAPz/DAAKAAcA+f/6/wMA+P/q/wAA+v/7/+///f8AAAEA8//i/+X/1//K/9T/0f+7/8v/xP/B/9T/2//e//7/+f8GAAoABgAGAAUA+v/o/9v/4f/a/+z////n//T/CgAKAPv/BQD8//7/7//n/wgADAD+/xIAFQAUAAsAEgApAAoANgAtACQAGQAEABsACwALAAIACQAbABsAMAAuACIAGQAkABMABwAkABMAFAAUAAYAFgAXACsAFgAeABYACQAeAAkACgAAABcAHgAgAB0AAwAMACIAHgAnAAsADAAOAAoABwD8/woACAAFAP3/AQAUABgAHQAaAAUA/f/y/wEA7f8CABIA/f8SABwAEwANAAYA9v/9/wMA5v/2/+D/0//e/8X/3v+5/+f/x//B/+v/4P/v/wsA/v8HAAgA+/8JABoACwAJAA8AAAARABEADwARACMAEQArABsAKQAoABsANAATACMAKQAFACsAMAAwABwALQA3ACkAKAADAB8AKQAMADcAEwDr/+f/9//t/wQACgAJABoAAQAJAAkAAgATABkAIwAgACcAJgAWACQACwAAAAQADQAOABMABQD3//f//P8DABYABgD6/wYADgADAAYABAAaAAcAAQACAP//BgD+/xMAAwDx/woA+P8DAAMA3v/n/9H/6P/c/+z/6P/d/+f/2v/Z/9r/1P/V/+X/1//i/+D/0v/R/9L/1/+//8T/3f/K/83/t/+9/9T/0P/d/9v/zv/5//v/AgDr/wEAAAAGAAMA+f/v//X/CwDz/wEADAAUABgA///4////5P8IAPz/6v/k/9f/0v/I/+X/1f/Y/9L/5P/m/9D/9v/j/+3/9f/8/wkAAwALACAA/f/0/97/4//b//r/9//5/+v//v8LAPL/9f/0/wcACQD2/woAFgAIAAIA///q/wQAGwASAAkAHQAZAAQA7v8EAPr/5P/9/+r/4f/7/wgAEgADABYAFwAAAAgA9P8MABMAEQARAAsAFAAOABgA+/8BAO7/4v8YAAAA1f/t//3/7f8IAAQACgAmABUAQAA7ACoAOAAbACIAHwAmADAAFQAgAC8AFgARACUABQAOAAAA/f8HAAAAEQATABsABQAAABMA/f8LABkA9f/7/wQABwALABMA+f/1//r/AQAEAPj//v8ZAO7/+f8MAA8AJAAPAB8ANgBKAFMARwBUAFAAQwBFAEEANQA9ADcAIwBFACMAMAA5ACcAKwARAB0AEwABAAoAFwAPAP3/AQD8/xwADwALABYABgARAAUA8/8DAPv/6v8HAAsAAgAGABEABgABAOz/BQAEAAwADQANACAAIwAUACQAJQA/ACAALgA2AA8AKQAeACAAHAAmAC4ALwA3ADkAMgAjABoAJgAsAAgAGgAHAA8AFAAMAAkA/P/5//3/AwDl/wUADQAXAAYAGAAEAPL/AgAGAPv/2f/x//H/7f/0/wAABgD1//v/HgADABUABQD4/wIAAAAIAPz/8v8UABMAAQAEAPv//f8IAA4AAQABAPf/BwAUABQACgAKAAAA9v/6/+3/8f/u/wEA+//8/wIA/v/r/+j/7P/y/9r/5P/s/+D/1f/n//L/4//u/+H/0//r/9T/3P/d/8H/4P/L/93/x//e/+H/3v/V/9H/6v/g/93/4P/i/9r/7//2//L/7//Y/9r/0//K/+H/6P/b/+b/5f/W/9f/+f/z//H/8f/q//H/5//z/+n/7f/V/8b/1//J/8j/6f/q/+D/y//h/+3/1v/b/+L/5v/k/+j/9f/3/+//9v/2/w4ADAD8/wMA///8/wIAAwABAPz/+f/1//T/AwAEAN7/+v/y//L/4v/N/+r/+f/t/wEABwACABgAKQAXABIACAATABsAEQD4/+//6v/r/wMAFAAGAO//BADj/wAADgAmABoAHQAUABcAJAAaAC4AHQAoABYALAAsACUAHwAgABIAFwAnABEAFwAEAAQA/P8MACcAEgAZAAYAAwD2/yAAHwANABMABQAYAAkAIgAjABcADwAfAAgABAD+/wgA7f///wgA+f8ZAP//KgALAAMAFwAaACwAGgAwAB0ADAAcABkAJAANABMAFAAOAAkAFAAbAAkABwANAA4ADQA0ACAAGgApAAkAEwArABoAKQApACUAJAAgACUADQAeABkACQASABsAKAABABMAFQAJAAYADAAKAAgADwAXABkACQAWABQAKwApAC8AOQAuADcARAA8ACgANwA4ADMARQA1AD0AJAAlADAAKAAqACIAFwAmAA4AIAAXAPz/CAADABIACQAIACMAHQAKAAkAFAAEAAAAAQD/////CwAGAA4AAADz/+f/9//m/+z/7v/Y/+f/5f/q/+//6f/i/+r/6//q/+3/8f/m/+T/1//c/9f/xP/K/9T/5f/4/93/2f/q/+H/yP/U/9f/4P/Y/+f/2P/Q/9v/5f/x/9j/3v/t/+n/6f/h/9v////N/9z/3v/R/+D/v//K/73/x//s/87/2//E/9T/2//a/97/xP/Q/8r/wP/E/9X/3P/a/9T/4P/S//3/2P/y/+///v8HABUACQAOAA0A8f/7/wcACwAUAPT/6f////n//v/+/+f/BQD0/wcADAABAA0A//8AAP3/7f/Z/9f/4//V/9z/3P/b/+v/8v/i//P/8v/7/93/8//q/93/6//T/8v/5//t/+//7P8CAPT/2f8HAPL/DAAOAAgAIAD7/wIACAD+/wcA+f8HAAMAGgAKAOL/8//v//j//P/p//z/8v/3//P/9f/7//H/9v/l/+j/7P/u/////v/8/xsA8v/v//v/8//j/9X//P/W/93/4P/h//b/4//0/+r/+//5/wIABgACAAQAHwAWAB0ACAABAC4AFgAdAA0ALgAXACIAKwAmACMAJQAbACwAJAAWACwADAAaADUAFAAaAPj/AwADAOf///8LAAQA/P8TACAAIwArAAIAEQAaAAwAJwAZABwAKQAjAC4AKQAzABUAJwA6ACQAKAAiAC0AFgAKACsACwAHAAIA/P8VACcAHQAZACoADgAXABcADgADAAsA+/8VABcAEQAdAAoADgDz//f/BwAHAP//9v/5/wwA+v8AAP7/BAD7/+7/9f/6/xUADgD1//b/+P/+//b/AwD//wAAAADh//3/+v////3/AAD9//b/FwADAPX/6/8AAP//CAADAAIACwD8/wIA///+/wYA7P/2/+7//////9b/4//h//L/+//s/+7/3P//////5P8BAPH/8//2/+D//f/i/wMA7v/t//r//f8LAPT//v/0/+//4P/k//P/6f/v/9v/6f/7/+L/6f/k/9n/8f/W/+7/9v/z/wMA7v8YAAEA///7/9z/+//2//T/AwAGAAQA5P/6/+H/4//T/9L/4P/U/+3/7f/3/9v/yf/b/8f/2v/c/9j/7f/n/+//+f/d/+f/0P/m//r/5f///+v/3P/U/87/2P/3/+v/3v/e/+L/6f/H/+T/2P/r/9r/6P/2/8f/6//M/9D/4//M/+v/6f/z//r//f/e/9n/7P/b/93/4f/g////9//t//f/7P/5//b/+P/z//H/BwALABUA+P8HAPn/BwABAPb/HwA4AB0AOQAoAB8AGwAjABgAKwAgABgANgAtAC0AIwAoABMADwAdAC4ADgAeAB8ACgAJAPz/EgAYAAQA9v8YABcAIwATABMAHAD//yMACQASABkAHQA9ACwALAANABIAEQDy//7/IwAdACIAHgAdABMACwAqAPz/DwAJABYAKwAMABYAGwAeABwAMAAnAA4AOQAVAB0AIgAOACMACgAmAAoAFAAiAPb/8f/3//j/BQD1/w0AFAAGABIACwAYAAsAAQAOAAEAGAAZAB4ACQAVABwA9/8MAAgAHgAYACsARwAbADkAGQANABUABwAiACkAGwAjADAAOgArAA8ANwAUACkAJwAjAB8AKAAsACoAJgAlACIAOQAfABcAKwAVABUAHQALAPn/8//2//n/DQAbAAkAIAAIAPv/7//q/wcACQAZAAkA/f8FAO///P/0/+v/AgAAAPv/9//r/xQA7/8JAA4AEwAZABYABwD//wYAAAAaABQAAgAMABgADwDv/+r/9//v/+v/5P/c/+n/1//e/9v/7f/o/93/9P/q/+b/7//p/9P/4f/T/+b/5//o/9v/6v/l/97/8//i/+P/2P/L/6P/wv/F/7//wv/B/87/4f/Y/9f/1//m/+n/7//2/wEACADz//n/6f///+X/AQD1/+//8v/2/wAA5//z//n/+f/r/xkACQAOAAkABwAVAAQACgD2//b/AAD6//H/+//r/xIAFADh/+//7P/s//P/zv/h/+n///8BAOn/8//n/9z/0v/k/9n/+P/p/93/7v/d/+3/zf/Z/97/4v/i/9f/zf/U/9b/4v/u/9b/+//X//H/+v/e/xYACAAJAP3/9//6////7f/5/+T/8/8KAOr//f/8/wYA8v8JAAQA+P/8/97/6//y//f/8f/7//f/DwD4/93/8v8CABYACQAWAAIAAQAMAAoA+P8BAAMACwANAAMA+f8CABMADQDz/wIABgAJABIABwALABwAFgAKAAIAAAD2//H/+f/p//b/CQD1/wgA//8KAAIAAgAVABsAMAAmACUALQAgAC4ADgAIABsADwAiAB8AGQAiAAYADwD5/+v/9//u/wAA8f/+//3/7v/6/wIA9f/7////6/8FAAEABgAZAA0ABADx/xgAAAARABwADwABAP//AgD4//b/8f////n////9/wAACgANABIAFAAbAB0AGQAJAAUADAARAA0AEgAcACIAHAALABYADgD4//n/BgAXAAUACwAbAAAACgADAA4ADQACABMAFAAMAAcAEwAAAAEA/P/t/+P/DgD4/+z/+f8BAPz/+P/2/+z/7v/3/wAAAQAGAP7/BQALAAMA+v/8/wEAAAABAP3/9f/v/+n/1f/1/+//5f8CAAQABgAUAPr/AgD6/xUACQDm/wAA+P/+//3/CQD7/wAAFgDo/wIAAQD5/wYA7v/u//b/8f8FAOv/7v/t/+3/7P/x/wAACAD+//X/+v8CABkAFAAIAPL/+P8BABQA+/8IAPP/9P8WAAUAEwAdACcAIgAcABgAFQAcAP7//f8FAPT/BAASAPf/9//8/wMADAD7//7/AAAJABYACgD8/xgAAQD9/wUABgAVABYABQAEAAQAAAD8//H//P/4//3/9//s//X/AQDo/93/3v/b/9z/6f/g/+X/3v/R/+v/2P/c/9H/3P/0/+//AwD6/wIA6v8SAPj/9P8IAPP/CAATABEAAwARABwALgAvAB8AEQAYABgABwDq/+n/8/8AAAIA9f/y//T/9v/7/+n/2P/9/+b/AADs//L////y////8f/z//b/7v/t/+7/CwD8/+j/CQDe/wYA9//z//L/7v/2//f/7f/t/+3/9f8GAAIA7v/+/wwACQASAPX/BgAFAO7/5//6//X/7//s/+//8v8EAAkAAgDz/+v//f/k/wAA/v/5/w4A+v8PAO//8f/x/93/6//1//L/6v/0//f/AAASAAIA+P8CABkAGgA3ABEADQAaABUAHAAaABoAGQAVACoAKAAPABEAGgAJAAAAEgAdACgANAAwABsAHgATAP//CAALAAwABAAPABwAHgAWAAkADQAOAAAAGgAPABEAIgATACIAKQAqABkAIgAVAB0AAgATAA4A/P8JAAsAAwACAPj/9f/r/wkAAAD3//n/9f8UABgA9//3/wYA7f/6//n/6P/6//z/6P/e/wQA9f/z/wgADAD9/+X/5v/n/+f/4v/b//7/6//h//X/3v/W/+P/0v/O/9j/xP/T/9z/8v/e/8r/y//L/9r/0//O//v/9/8IAA4A+P/z/wUA6v/6//f/6//4//X/5f/9/+n/5v/4/+j/5//h/+b/9v/u/wEA7P/y/wYACgALAAoAAgADAAMADgAGAO7//P8IAPr/9//8/+z/9f/6//b/9/8CAAAAHAAXACAALwALACQALgAcAC0AKwApAB8AGAALAPv/CwD1/yMA/f/q//v/9v8GAAEAEQDt//v/DwAPAAsACAAEABMAEwARAAcABAAnABQADwAHAOj/8v/h/+//9P/p/+X/6v/y/9z/2P/N/8v/5//u/+D/8v8DAOT/7v/p/+L/7f/3//z/CAD0/+b/5f/q/+L/7f/Z/+D/5v/s/9z/7v/0/+b/0v/i//z/4/////j/CwAFAPb/+P/l//3/8f/4/+7//P8RAPX/+P/p//j/9v/h//L/+f/e/+3/DwD8//n/7P////T/BgAMAPb/CwANAC4AHQAXAA0ACAD3/xgABAANAAAADwAdABYAHAAiACYAIAA0AB4AJQAkADMAJwAsADMAKQAwADkALAAwACgALgA3ACQAKwAgAA==\" type=\"audio/wav\" />\n","                    Your browser does not support the audio element.\n","                </audio>\n","              "]},"metadata":{}}],"source":["for waveform, label in waveform_ds.take(1):\n","  label = label.numpy().decode('utf-8')\n","  spectrogram = get_spectrogram(waveform)\n","\n","print('Label:', label)\n","print('Waveform shape:', waveform.shape)\n","print('Spectrogram shape:', spectrogram.shape)\n","print('Audio playback')\n","display.display(display.Audio(waveform, rate=16000))"]},{"cell_type":"code","execution_count":null,"id":"previous-clear","metadata":{"id":"previous-clear","colab":{"base_uri":"https://localhost:8080/","height":499},"executionInfo":{"status":"ok","timestamp":1650757514952,"user_tz":240,"elapsed":564,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"8b1e09fe-cef7-48d3-aaae-ff248897ea6c"},"outputs":[{"output_type":"display_data","data":{"text/plain":["<Figure size 864x576 with 2 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}}],"source":["def plot_spectrogram(spectrogram, ax):\n","  # transpose so that the time is\n","  # represented in the x-axis (columns).\n","  freq_bins = spectrogram.shape[1]\n","  time_dur = spectrogram.shape[0]\n","  X = np.arange(time_dur)\n","  Y = range(freq_bins)\n","  ax.pcolormesh(X, Y, spectrogram.T)\n","\n","fig, axes = plt.subplots(2, figsize=(12, 8))\n","timescale = np.arange(waveform.shape[0])\n","axes[0].plot(timescale, waveform.numpy())\n","axes[0].set_title('Waveform')\n","axes[0].set_xlim([0, 16000])\n","plot_spectrogram(spectrogram.numpy(), axes[1])\n","axes[1].set_title('Spectrogram')\n","plt.show()"]},{"cell_type":"code","execution_count":null,"id":"26fa4527-72ed-45fc-8c06-9333274fce77","metadata":{"id":"26fa4527-72ed-45fc-8c06-9333274fce77","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757514953,"user_tz":240,"elapsed":10,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"2f184d28-1a01-4b7d-a4eb-73f1269255bc"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["(24, 32)"]},"metadata":{},"execution_count":54}],"source":["spectrogram.numpy().shape"]},{"cell_type":"code","execution_count":null,"id":"undefined-filter","metadata":{"id":"undefined-filter","colab":{"base_uri":"https://localhost:8080/","height":663},"executionInfo":{"status":"ok","timestamp":1650757515642,"user_tz":240,"elapsed":695,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"5d1ee920-2d02-4068-d7b5-2e5d4cc4181a"},"outputs":[{"output_type":"stream","name":"stderr","text":["/usr/local/lib/python3.7/dist-packages/ipykernel_launcher.py:10: DeprecationWarning: `np.int` is a deprecated alias for the builtin `int`. To silence this warning, use `int` by itself. Doing this will not modify any behavior and is safe. When replacing `np.int`, you may wish to use e.g. `np.int64` or `np.int32` to specify the precision. If you wish to review your current use, check the release note link for additional information.\n","Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n","  # Remove the CWD from sys.path while we load stuff.\n"]},{"output_type":"display_data","data":{"text/plain":["<Figure size 720x720 with 9 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}}],"source":["rows = 3\n","cols = 3\n","n = rows*cols\n","fig, axes = plt.subplots(rows, cols, figsize=(10, 10))\n","for i, (spectrogram, label_id) in enumerate(train_ds.take(n)):\n","  r = i // cols\n","  c = i % cols\n","  ax = axes[r][c]\n","  plot_spectrogram(np.squeeze(spectrogram.numpy()), ax)\n","  ax.set_title(label_list[np.int(label_id)])\n","  ax.axis('off')\n","\n","plt.show()"]},{"cell_type":"code","execution_count":null,"id":"a21fc7a4-2a9b-45d9-9a0a-6561afd7b828","metadata":{"id":"a21fc7a4-2a9b-45d9-9a0a-6561afd7b828"},"outputs":[],"source":[""]},{"cell_type":"code","execution_count":null,"id":"certified-interval","metadata":{"id":"certified-interval"},"outputs":[],"source":["def copy_with_noise(ds_input, rms_level=0.25):\n","  rng = tf.random.Generator.from_seed(1234)\n","  wave_shape = tf.constant((wave_length_samps,))\n","  def add_noise(waveform, label):\n","    noise = rms_level*rng.normal(shape=wave_shape)\n","    zero_padding = tf.zeros([wave_length_samps] - tf.shape(waveform), dtype=tf.float32)\n","    waveform = tf.concat([waveform, zero_padding], 0)    \n","    noisy_wave = waveform + noise\n","    return noisy_wave, label\n","\n","  return ds_input.map(add_noise)"]},{"cell_type":"code","execution_count":null,"id":"distributed-breakfast","metadata":{"id":"distributed-breakfast","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757515643,"user_tz":240,"elapsed":7,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"73a223b4-d624-4eef-a95d-0f93b969706e"},"outputs":[{"output_type":"stream","name":"stdout","text":["element 18 has shape (15604,)\n","18\n"]}],"source":["# waveform_ds = augment_with_noise(waveform_ds)\n","count = 0\n","for w,l in waveform_ds:\n","  if w.shape != (16000,):\n","    print(f\"element {count} has shape {w.shape}\")\n","    break\n","  count += 1\n","print(count)"]},{"cell_type":"code","execution_count":null,"id":"catholic-berlin","metadata":{"id":"catholic-berlin"},"outputs":[],"source":["def pad_16000(waveform, label):\n","    zero_padding = tf.zeros([wave_length_samps] - tf.shape(waveform), dtype=tf.float32)\n","    waveform = tf.concat([waveform, zero_padding], 0)        \n","    return waveform, label"]},{"cell_type":"code","execution_count":null,"id":"sound-forty","metadata":{"id":"sound-forty"},"outputs":[],"source":["def count_labels(dataset):\n","    counts = {}\n","    for _, lbl in dataset:\n","        if lbl.dtype == tf.string:\n","            label = lbl.numpy().decode('utf-8')\n","        else:\n","            label = lbl.numpy()\n","        if label in counts:\n","            counts[label] += 1\n","        else:\n","            counts[label] = 1\n","    return counts"]},{"cell_type":"code","execution_count":null,"id":"nonprofit-admission","metadata":{"id":"nonprofit-admission"},"outputs":[],"source":["# Collect what we did to generate the training dataset into a \n","# function, so we can repeat with the validation and test sets.\n","def preprocess_dataset(files, num_silent=None, noisy_reps_of_known=None):\n","  # if noisy_reps_of_known is not None, it should be a list of rms noise levels\n","  # For every target word in the data set, 1 copy will be created with each level \n","  # of noise added to it.  So [0.1, 0.2] will add 2x noisy copies of the target words \n","  if num_silent is None:\n","    num_silent = int(0.2*len(files))+1\n","  print(f\"Processing {len(files)} files\")\n","  files_ds = tf.data.Dataset.from_tensor_slices(files)\n","  waveform_ds = files_ds.map(get_waveform_and_label)\n","  if noisy_reps_of_known is not None:\n","    # create a few copies of only the target words to balance the distribution\n","    # create a tmp dataset with only the target words\n","    ds_only_cmds = waveform_ds.filter(lambda w,l: tf.reduce_any(l == commands))\n","    for noise_level in noisy_reps_of_known:\n","       waveform_ds = waveform_ds.concatenate(copy_with_noise(ds_only_cmds, rms_level=noise_level))\n","  if num_silent > 0:\n","    silent_wave_ds = create_silence_dataset(num_silent, wave_length_samps, \n","                                            rms_noise_range=[0.01,0.2], \n","                                            silent_label=silence_str)\n","    waveform_ds = waveform_ds.concatenate(silent_wave_ds)\n","  print(f\"Added {num_silent} silent wavs and ?? noisy wavs\")\n","  num_waves = 0\n","  output_ds = wavds2specds(waveform_ds)\n","  return output_ds"]},{"cell_type":"code","execution_count":null,"id":"measured-police","metadata":{"id":"measured-police","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757515809,"user_tz":240,"elapsed":12,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"9fa5e410-ae65-4972-bf7a-41f1b72a832b"},"outputs":[{"output_type":"stream","name":"stdout","text":["We have 6745/843/844 training/validation/test files\n"]}],"source":["print(f\"We have {len(train_files)}/{len(val_files)}/{len(test_files)} training/validation/test files\")"]},{"cell_type":"code","execution_count":null,"id":"refined-immunology","metadata":{"id":"refined-immunology","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757517544,"user_tz":240,"elapsed":1746,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"4bac0c32-b9dc-408a-b0cb-d8a415b39c4d"},"outputs":[{"output_type":"stream","name":"stdout","text":["['_silence', '_unknown', 'bamboozle', 'right']\n","Processing 20 files\n","Added 5 silent wavs and ?? noisy wavs\n","About to create spectrograms from 25 waves\n"," 0 wavs processed{3: 4, 1: 15, 2: 1, 0: 5}\n","Processing 20 files\n","Added 5 silent wavs and ?? noisy wavs\n","About to create spectrograms from 35 waves\n"," 0 wavs processed{3: 12, 1: 15, 2: 3, 0: 5}\n"]}],"source":["# print(train_files[:20])\n","print(label_list)\n","train_files[:20]\n","\n","tmp_ds = preprocess_dataset(train_files[:20])\n","print(count_labels(tmp_ds))\n","\n","with tf.device('/CPU:0'): # needed on M1 mac\n","    tmp_ds = preprocess_dataset(train_files[:20], noisy_reps_of_known=[0.05,0.1])\n","    print(count_labels(tmp_ds))\n","\n"]},{"cell_type":"code","execution_count":null,"id":"48d0ab6d-451c-4e3d-9caa-9b1c8ad3c27d","metadata":{"id":"48d0ab6d-451c-4e3d-9caa-9b1c8ad3c27d"},"outputs":[],"source":[""]},{"cell_type":"code","execution_count":null,"id":"conscious-humor","metadata":{"id":"conscious-humor","colab":{"base_uri":"https://localhost:8080/"},"outputId":"14be943c-ceb5-4097-d695-8f19a0973bd2","executionInfo":{"status":"ok","timestamp":1650757624595,"user_tz":240,"elapsed":107054,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["Processing 6745 files\n","Added 1350 silent wavs and ?? noisy wavs\n","About to create spectrograms from 13830 waves\n"," 13750 wavs processedProcessing 843 files\n","Added 169 silent wavs and ?? noisy wavs\n","About to create spectrograms from 1012 waves\n"," 1000 wavs processedProcessing 844 files\n","Added 169 silent wavs and ?? noisy wavs\n","About to create spectrograms from 1013 waves\n"," 1000 wavs processed"]}],"source":["# train_ds is already done\n","with tf.device('/CPU:0'): # needed on M1 mac\n","    train_ds = preprocess_dataset(train_files, noisy_reps_of_known=[0.05,0.1,0.15,0.2,0.25])\n","val_ds = preprocess_dataset(val_files)\n","test_ds = preprocess_dataset(test_files)"]},{"cell_type":"code","execution_count":null,"id":"instant-sucking","metadata":{"id":"instant-sucking","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757626928,"user_tz":240,"elapsed":2349,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"8c294dfd-e53f-442e-e391-7d58218617d3"},"outputs":[{"output_type":"stream","name":"stdout","text":["training data set\n","{3: 4800, 1: 5598, 2: 2082, 0: 1350}\n","val_ds data set\n","{1: 697, 2: 43, 3: 103, 0: 169}\n","test_ds data set\n","{2: 42, 1: 705, 3: 97, 0: 169}\n"]}],"source":["print(\"training data set\")\n","print(count_labels(train_ds))\n","print(\"val_ds data set\")\n","print(count_labels(val_ds))\n","print(\"test_ds data set\")\n","print(count_labels(test_ds))"]},{"cell_type":"code","execution_count":null,"id":"controlling-arnold","metadata":{"id":"controlling-arnold"},"outputs":[],"source":["train_ds = train_ds.shuffle(int(len(train_files)*1.2))\n","val_ds = val_ds.shuffle(int(len(val_files)*1.2))\n","test_ds = test_ds.shuffle(int(len(test_files)*1.2))"]},{"cell_type":"code","execution_count":null,"id":"scheduled-emergency","metadata":{"id":"scheduled-emergency"},"outputs":[],"source":["batch_size = 64\n","train_ds = train_ds.batch(batch_size)\n","val_ds = val_ds.batch(batch_size)"]},{"cell_type":"code","execution_count":null,"id":"positive-publication","metadata":{"id":"positive-publication"},"outputs":[],"source":["train_ds = train_ds.cache().prefetch(AUTOTUNE)\n","val_ds = val_ds.cache().prefetch(AUTOTUNE)"]},{"cell_type":"code","execution_count":null,"id":"exposed-appearance","metadata":{"id":"exposed-appearance","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757627080,"user_tz":240,"elapsed":8,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"9f513828-2e86-48e8-c417-ea1968793b08"},"outputs":[{"output_type":"stream","name":"stdout","text":["Spectrogram shape (24, 32, 1)\n","ranges from 0.0 to 711.0\n"]}],"source":["for spectrogram, _ in train_ds.take(1):\n","  spec1 = spectrogram\n","# take(1) takes 1 *batch*, so we have to select the first \n","# spectrogram from it, hence the [0]\n","print(f\"Spectrogram shape {spec1[0].shape}\")\n","print(f\"ranges from {np.min(spec1)} to {np.max(spec1)}\")   # min/max across the whole batch"]},{"cell_type":"code","execution_count":null,"id":"artistic-christian","metadata":{"id":"artistic-christian","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757627220,"user_tz":240,"elapsed":146,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"593f836b-bd21-46ae-8294-cc005d5deb6c"},"outputs":[{"output_type":"stream","name":"stdout","text":["Input shape: (24, 32, 1)\n"]}],"source":["for spectrogram, _ in train_ds.take(1):\n","  # take(1) takes 1 *batch*, so we have to select the first \n","  # spectrogram from it, hence the [0]\n","  input_shape = spectrogram[0].shape  \n","print('Input shape:', input_shape)\n","num_labels = len(label_list)\n"]},{"cell_type":"code","execution_count":null,"id":"stuck-david","metadata":{"id":"stuck-david","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757627363,"user_tz":240,"elapsed":151,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"af14b82b-965f-4cf7-a790-a1e2f6000bbc"},"outputs":[{"output_type":"stream","name":"stdout","text":["Input shape: (24, 32, 1)\n","Model: \"simple_cnn\"\n","_________________________________________________________________\n"," Layer (type)                Output Shape              Param #   \n","=================================================================\n"," conv2d (Conv2D)             (None, 22, 30, 20)        200       \n","                                                                 \n"," pool2 (MaxPooling2D)        (None, 11, 15, 20)        0         \n","                                                                 \n"," depthwise_conv2d (Depthwise  (None, 11, 15, 20)       200       \n"," Conv2D)                                                         \n","                                                                 \n"," conv2d_1 (Conv2D)           (None, 11, 15, 32)        672       \n","                                                                 \n"," max_pooling2d (MaxPooling2D  (None, 2, 3, 32)         0         \n"," )                                                               \n","                                                                 \n"," dropout (Dropout)           (None, 2, 3, 32)          0         \n","                                                                 \n"," flatten (Flatten)           (None, 192)               0         \n","                                                                 \n"," dense (Dense)               (None, 128)               24704     \n","                                                                 \n"," dropout_1 (Dropout)         (None, 128)               0         \n","                                                                 \n"," dense_1 (Dense)             (None, 4)                 516       \n","                                                                 \n","=================================================================\n","Total params: 26,292\n","Trainable params: 26,292\n","Non-trainable params: 0\n","_________________________________________________________________\n"]}],"source":["print('Input shape:', input_shape)\n","# model = models.Sequential([\n","#     layers.Input(shape=input_shape),\n","#     layers.Conv2D(20, 3, activation='relu'),\n","#     layers.MaxPooling2D(name='pool2'),\n","#     layers.DepthwiseConv2D(kernel_size=(3,3), padding='same'),\n","#     layers.Conv2D(32, 1, activation='relu'),\n","#     layers.MaxPooling2D(pool_size=(4,4)),\n","#     layers.Dropout(0.2),\n","#     layers.Flatten(),\n","#     layers.Dense(128, activation='relu'),\n","#     layers.Dropout(0.2),\n","#     layers.Dense(128, activation='relu'),\n","#     layers.Dropout(0.2),\n","#     layers.Dense(num_labels),\n","# ], name=\"simple_cnn\")\n","\n","model = models.Sequential([\n","    layers.Input(shape=input_shape),\n","    layers.Conv2D(20, 3, activation='relu'),\n","    layers.MaxPooling2D(name='pool2'),\n","    layers.DepthwiseConv2D(kernel_size=(3,3), padding='same'),\n","    layers.Conv2D(32, 1, activation='relu'),\n","    layers.MaxPooling2D(pool_size=(4,4)),\n","    layers.Dropout(0.2),\n","    layers.Flatten(),\n","    layers.Dense(128, activation='relu'),\n","    layers.Dropout(0.5),\n","    layers.Dense(num_labels),\n","], name=\"simple_cnn\")\n","\n","model.summary()"]},{"cell_type":"code","execution_count":null,"id":"rough-train","metadata":{"id":"rough-train","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757627510,"user_tz":240,"elapsed":149,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"8e18a993-4a3e-4fbb-c68c-889948d746bc"},"outputs":[{"output_type":"stream","name":"stdout","text":["[95760 23940 85120 16384 16384   512]\n","238100\n"]}],"source":["# number of MACs in each layer is (# outputs in layer) * (number of inputs that contribute to one output)\n","macs = np.array([(14*38*20)*(3*3), (7*19*20)*(3*3), (7*19*32)*20, 128*128, 128*128, 4*128])\n","print(macs)\n","print(np.sum(macs))"]},{"cell_type":"code","execution_count":null,"id":"emerging-holocaust","metadata":{"id":"emerging-holocaust"},"outputs":[],"source":["model.compile(\n","    optimizer=tf.keras.optimizers.Adam(),\n","    loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),\n","    metrics=['accuracy'],\n",")"]},{"cell_type":"code","execution_count":null,"id":"alternative-arrest","metadata":{"id":"alternative-arrest"},"outputs":[],"source":["#  Google: feature extraction with Keras\n","# feature_model = tf.keras.model(input=model.input, output= model.layers[4].output)"]},{"cell_type":"code","execution_count":null,"id":"recreational-publication","metadata":{"id":"recreational-publication","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757914779,"user_tz":240,"elapsed":287281,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"ac4cf696-295d-4bf8-a828-24a215c0dcd4"},"outputs":[{"output_type":"stream","name":"stdout","text":["Epoch 1/25\n","217/217 [==============================] - 8s 33ms/step - loss: 3.2139 - accuracy: 0.5388 - val_loss: 0.7504 - val_accuracy: 0.7006\n","Epoch 2/25\n","217/217 [==============================] - 12s 57ms/step - loss: 0.9030 - accuracy: 0.6244 - val_loss: 0.6392 - val_accuracy: 0.7194\n","Epoch 3/25\n","217/217 [==============================] - 12s 56ms/step - loss: 0.7962 - accuracy: 0.6578 - val_loss: 0.5419 - val_accuracy: 0.8241\n","Epoch 4/25\n","217/217 [==============================] - 7s 32ms/step - loss: 0.7275 - accuracy: 0.6821 - val_loss: 0.5063 - val_accuracy: 0.7846\n","Epoch 5/25\n","217/217 [==============================] - 7s 32ms/step - loss: 0.6685 - accuracy: 0.6995 - val_loss: 0.4508 - val_accuracy: 0.8498\n","Epoch 6/25\n","217/217 [==============================] - 7s 32ms/step - loss: 0.6292 - accuracy: 0.7199 - val_loss: 0.3920 - val_accuracy: 0.8755\n","Epoch 7/25\n","217/217 [==============================] - 7s 32ms/step - loss: 0.5906 - accuracy: 0.7378 - val_loss: 0.3722 - val_accuracy: 0.8785\n","Epoch 8/25\n","217/217 [==============================] - 7s 32ms/step - loss: 0.5622 - accuracy: 0.7467 - val_loss: 0.3474 - val_accuracy: 0.8656\n","Epoch 9/25\n","217/217 [==============================] - 7s 32ms/step - loss: 0.5460 - accuracy: 0.7531 - val_loss: 0.3195 - val_accuracy: 0.8923\n","Epoch 10/25\n","217/217 [==============================] - 7s 32ms/step - loss: 0.5181 - accuracy: 0.7684 - val_loss: 0.3121 - val_accuracy: 0.9071\n","Epoch 11/25\n","217/217 [==============================] - 7s 32ms/step - loss: 0.4946 - accuracy: 0.7788 - val_loss: 0.3076 - val_accuracy: 0.8972\n","Epoch 12/25\n","217/217 [==============================] - 14s 65ms/step - loss: 0.4883 - accuracy: 0.7823 - val_loss: 0.2636 - val_accuracy: 0.9279\n","Epoch 13/25\n","217/217 [==============================] - 14s 65ms/step - loss: 0.4724 - accuracy: 0.7880 - val_loss: 0.3009 - val_accuracy: 0.8992\n","Epoch 14/25\n","217/217 [==============================] - 13s 59ms/step - loss: 0.4616 - accuracy: 0.7953 - val_loss: 0.2293 - val_accuracy: 0.9407\n","Epoch 15/25\n","217/217 [==============================] - 11s 51ms/step - loss: 0.4490 - accuracy: 0.8013 - val_loss: 0.2634 - val_accuracy: 0.9101\n","Epoch 16/25\n","217/217 [==============================] - 11s 51ms/step - loss: 0.4430 - accuracy: 0.8041 - val_loss: 0.2446 - val_accuracy: 0.9298\n","Epoch 17/25\n","217/217 [==============================] - 7s 33ms/step - loss: 0.4318 - accuracy: 0.8071 - val_loss: 0.2301 - val_accuracy: 0.9387\n","Epoch 18/25\n","217/217 [==============================] - 7s 33ms/step - loss: 0.4307 - accuracy: 0.8033 - val_loss: 0.2469 - val_accuracy: 0.9111\n","Epoch 19/25\n","217/217 [==============================] - 7s 33ms/step - loss: 0.4173 - accuracy: 0.8169 - val_loss: 0.2166 - val_accuracy: 0.9486\n","Epoch 20/25\n","217/217 [==============================] - 7s 34ms/step - loss: 0.4124 - accuracy: 0.8173 - val_loss: 0.2328 - val_accuracy: 0.9279\n","Epoch 21/25\n","217/217 [==============================] - 7s 33ms/step - loss: 0.4074 - accuracy: 0.8164 - val_loss: 0.2413 - val_accuracy: 0.9318\n","Epoch 22/25\n","217/217 [==============================] - 8s 38ms/step - loss: 0.4114 - accuracy: 0.8159 - val_loss: 0.1907 - val_accuracy: 0.9555\n","Epoch 23/25\n","217/217 [==============================] - 7s 34ms/step - loss: 0.3986 - accuracy: 0.8249 - val_loss: 0.2215 - val_accuracy: 0.9318\n","Epoch 24/25\n","217/217 [==============================] - 7s 33ms/step - loss: 0.3908 - accuracy: 0.8302 - val_loss: 0.2203 - val_accuracy: 0.9407\n","Epoch 25/25\n","217/217 [==============================] - 7s 33ms/step - loss: 0.3800 - accuracy: 0.8338 - val_loss: 0.2042 - val_accuracy: 0.9466\n"]}],"source":["# history = model.fit(\n","#     train_ds, \n","#     validation_data=val_ds,  \n","#     epochs=EPOCHS) \n","#     # callbacks=tf.keras.callbacks.EarlyStopping(verbose=1, patience=2))\n","history = model.fit(\n","    train_ds, \n","    validation_data=val_ds,  \n","    epochs=EPOCHS) \n","    # callbacks=tf.keras.callbacks.EarlyStopping(verbose=1, patience=2))"]},{"cell_type":"code","execution_count":null,"id":"equipped-characteristic","metadata":{"id":"equipped-characteristic","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757914779,"user_tz":240,"elapsed":19,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"d1581e75-f7e7-4686-fd85-e9b985f9e0af"},"outputs":[{"output_type":"stream","name":"stdout","text":["Saving model to kws_ufe_23apr2022_2351.h5\n"]}],"source":["date_str = dt.now().strftime(\"%d%b%Y_%H%M\").lower()\n","model_file_name = f\"kws_ufe_{date_str}.h5\" \n","print(f\"Saving model to {model_file_name}\")\n","model.save(model_file_name, overwrite=False)\n"]},{"cell_type":"code","execution_count":null,"id":"157289b7-b7c9-469a-909a-4d346e583a1a","metadata":{"id":"157289b7-b7c9-469a-909a-4d346e583a1a"},"outputs":[],"source":["with open(model_file_name.split('.')[0] + '.txt', 'w') as fpo:\n","    fpo.write(f\"i16min            = {i16min           }\\n\")\n","    fpo.write(f\"i16max            = {i16max           }\\n\")\n","    fpo.write(f\"fsamp             = {fsamp            }\\n\")\n","    fpo.write(f\"wave_length_ms    = {wave_length_ms   }\\n\")\n","    fpo.write(f\"wave_length_samps = {wave_length_samps}\\n\")\n","    fpo.write(f\"window_size_ms    = {window_size_ms   }\\n\")\n","    fpo.write(f\"window_step_ms    = {window_step_ms   }\\n\")\n","    fpo.write(f\"num_filters       = {num_filters      }\\n\")\n","    fpo.write(f\"use_microfrontend = {use_microfrontend}\\n\")\n","    fpo.write(f\"label_list        = {label_list}\\n\")\n","    fpo.write(f\"spectrogram_shape = {spectrogram.numpy().shape}\\n\")\n"]},{"cell_type":"code","execution_count":null,"id":"amateur-slovenia","metadata":{"id":"amateur-slovenia","colab":{"base_uri":"https://localhost:8080/","height":279},"executionInfo":{"status":"ok","timestamp":1650757915312,"user_tz":240,"elapsed":540,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"78f64053-9238-4807-ed38-f6698edb76eb"},"outputs":[{"output_type":"display_data","data":{"text/plain":["<Figure size 432x288 with 2 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}}],"source":["metrics = history.history\n","plt.subplot(2,1,1)\n","plt.semilogy(history.epoch, metrics['loss'], metrics['val_loss'])\n","plt.legend(['training', 'validation'])\n","plt.ylabel('Loss')\n","plt.xlabel('Epoch')\n","plt.subplot(2,1,2)\n","plt.plot(history.epoch, metrics['accuracy'], metrics['val_accuracy'])\n","plt.legend(['training', 'validation'])\n","plt.ylabel('Accuracy')\n","plt.xlabel('Epoch')\n","plt.show()"]},{"cell_type":"code","execution_count":null,"id":"hungarian-arabic","metadata":{"id":"hungarian-arabic"},"outputs":[],"source":["test_audio = []\n","test_labels = []\n","\n","for audio, label in test_ds:\n","  test_audio.append(audio.numpy())\n","  test_labels.append(label.numpy())\n","\n","test_audio = np.array(test_audio)\n","test_labels = np.array(test_labels)"]},{"cell_type":"code","execution_count":null,"id":"dangerous-coverage","metadata":{"scrolled":true,"id":"dangerous-coverage","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650757916507,"user_tz":240,"elapsed":757,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"a0996db5-bb31-43c2-d9ea-da047186d365"},"outputs":[{"output_type":"stream","name":"stdout","text":["Test set accuracy: 95%\n"]}],"source":["y_pred = np.argmax(model.predict(test_audio), axis=1)\n","y_true = test_labels\n","\n","test_acc = sum(y_pred == y_true) / len(y_true)\n","print(f'Test set accuracy: {test_acc:.0%}')"]},{"cell_type":"code","execution_count":null,"id":"governmental-cathedral","metadata":{"id":"governmental-cathedral","executionInfo":{"status":"ok","timestamp":1650757916509,"user_tz":240,"elapsed":27,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"colab":{"base_uri":"https://localhost:8080/","height":389},"outputId":"54e77cef-4f94-49b8-e1e8-2aa21f4a4f5c"},"outputs":[{"output_type":"display_data","data":{"text/plain":["<Figure size 432x432 with 2 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}}],"source":["confusion_mtx = tf.math.confusion_matrix(y_true, y_pred) \n","plt.figure(figsize=(6, 6))\n","sns.heatmap(confusion_mtx, xticklabels=label_list, yticklabels=label_list, \n","            annot=True, fmt='g')\n","plt.gca().invert_yaxis() # flip so origin is at bottom left\n","plt.xlabel('Prediction')\n","plt.ylabel('Label')\n","plt.show()"]},{"cell_type":"code","execution_count":null,"id":"serious-victory","metadata":{"scrolled":true,"id":"serious-victory","executionInfo":{"status":"ok","timestamp":1650757922143,"user_tz":240,"elapsed":5653,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"colab":{"base_uri":"https://localhost:8080/","height":315},"outputId":"d74bc487-12ad-4a43-8818-40268340b7ca"},"outputs":[{"output_type":"stream","name":"stdout","text":["On training set:\n","Data set accuracy: 84%\n"]},{"output_type":"display_data","data":{"text/plain":["<Figure size 360x288 with 2 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}}],"source":["dset = train_ds.unbatch()\n","print(\"On training set:\")\n","\n","ds_audio = []\n","ds_labels = []\n","\n","for audio, label in dset:\n","  ds_audio.append(audio.numpy())\n","  ds_labels.append(label.numpy())\n","\n","ds_labels = np.array(ds_labels)\n","ds_audio = np.array(ds_audio)\n","\n","model_out = model.predict(ds_audio)\n","y_pred = np.argmax(model_out, axis=1)\n","y_true = ds_labels\n","\n","ds_acc = sum(y_pred == y_true) / len(y_true)\n","print(f'Data set accuracy: {ds_acc:.0%}')\n","\n","confusion_mtx = tf.math.confusion_matrix(y_true, y_pred) \n","plt.figure(figsize=(5,4))\n","sns.heatmap(confusion_mtx, xticklabels=label_list, yticklabels=label_list, \n","            annot=True, fmt='g')\n","plt.xlabel('Prediction')\n","plt.ylabel('Label')\n","plt.show()"]},{"cell_type":"code","execution_count":null,"id":"unusual-stopping","metadata":{"scrolled":true,"id":"unusual-stopping","colab":{"base_uri":"https://localhost:8080/","height":511},"executionInfo":{"status":"ok","timestamp":1650678099318,"user_tz":240,"elapsed":1028,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"b04d4876-0a14-429e-a7e9-70b062842486"},"outputs":[{"output_type":"stream","name":"stdout","text":["Processing 4 files\n","Added 1 silent wavs and ?? noisy wavs\n","About to create spectrograms from 5 waves\n"," 0 wavs processed"]},{"output_type":"display_data","data":{"text/plain":["<Figure size 432x288 with 1 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}},{"output_type":"display_data","data":{"text/plain":["<Figure size 432x288 with 1 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}},{"output_type":"display_data","data":{"text/plain":["<Figure size 432x288 with 1 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}},{"output_type":"display_data","data":{"text/plain":["<Figure size 432x288 with 1 Axes>"],"image/png":"iVBORw0KGgoAAAANSUhEUgAAAWoAAABVCAYAAABgg64vAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAANW0lEQVR4nO3cf7BcZX3H8fenSUhC4hQkSA0k3NbQDJBKCAk/RC0G2yIErRgbKYpBSorCqB0ppa1gBkGTwY4dBIyhjcGxjVQbAQGhViUhCPkliUmwkZAmhgiBQIMEJD+//eN5Fk7Wu3eXe+/ePffez2vmzJ59fp1nn9397jnPOXsUEZiZWXn9Tqs7YGZmHXOgNjMrOQdqM7OSc6A2Mys5B2ozs5JzoDYzKzkHaus2kuZLui6vv0PS+k62M0fS1d3bu7rbfL+kLZJ2SjqxB7fb8DhJOkPSk83uk5WPA3U/I2mTpN/kgLQtB9fh3b2diHgwIsY20J/pkpZU1b00Ij7f3X2q40vA5RExPCIe7Wpjkh7IgXWmpJm1yjU6Tg1u89UfykLaJkltOW96d2zHep4Ddf90bkQMByYAE4HPVheQNLDHe9VaRwPrOlNR0oBO1utvY2yd5EDdj0XEVuD7wDgASSHpMkmPA4/ntCmSVknaIeknkt5aqS/pREk/lfSipNuBIYW8Aw7TJY2StFDSs5Kek3STpGOBOcBpeQ9/Ry57wJ6hpEskbZD0vKS7JI0s5IWkSyU9nvt4syTlvDGSFkl6QdL23McDSBosaScwAFgt6YmcfmzeK94haZ2k9xbqzJf0VUn3SnoJeFcj410ZE0l/J+lp4OvtjNMESY/mMf22pNvb2Uv+jKRnJD0l6aKcNgO4ALgyj+X3GumT9RIR4aUfLcAm4N15fRRpL/Lz+XkAPwDeCAwFTgSeAU4hBbKP5vqDgYOAzcDfAIOAqcAe4Lrc1hnAk3l9ALAa+DIwjBTQ357zpgNLqvo4v9DOZGA7ae9/MPAVYHGhbAB3A4cAo4FngbNy3gLgH0k7JK9us8a4BDAmrw8CNgD/kF/nZOBFYGyhfy8Ap1fabnDszwD2ArPzaxlaNU6VMf1U7sN5wO6qMd0LXJvzzwZeBg6tHjcvfWvxHnX/dEfee10CLAK+UMj7YkQ8HxG/AWYAX4uIpRGxLyJuA3YBp+ZlEPDPEbEnIr4DLK+xvZOBkcDfRsRLEfFKRCypUbbaBcC8iPhpROwC/p60B95WKDMrInZExC+BHwPjc/oe0pTGyNe5zVOB4bnd3RHxI9KPwfmFMndGxEMRsT8iXmmwXYD9wOciYlce4+rtDgRuzGO6EFhWVWYPcG3OvxfYCXTLHLeVlwN1//TnEXFIRBwdEZ+oChhbCutHA5/Jh/87cnAfRQq6I4GtEVG8q9fmGtsbBWyOiL2d6OvIYrsRsRN4DjiyUObpwvrLpCALcCUgYFmevvjY69jmlojYX0jbXLXNLXTOsx0E9vbGtHo7z1WNY/H1Wh/lQG3VqoPE9TmoV5aDI2IB8BRwZGU+OBtdo80twOgaJ8/q3b7xV6QfDAAkDQMOA7bWfSERT0fEJRExEvhr4BZJY+rVy9scJan4/Rhdtc3O3nayo3rtjemobmrbejEHauvIrcClkk5RMkzSOZLeADxMmi/9pKRBks4jTXG0ZxkpCM3KbQyRdHrO2wYcJemgGnUXABdJGi9pMGmaZmlEbKrXeUkflHRUfvp/pEC2v4MqFUtJe6pX5td2BnAu8K0G6nbFw8A+4HJJAyW9j9pj2p5twB80pWfWUg7UVlNErAAuAW4iBboNpJN/RMRu0smu6cDzwDRgYY129pEC3Rjgl8CTuTzAj0gnNJ+WtL2duv8NXA38JynYvwX4UIMvYRKwNF/VcRfwqYjYWK9Sfm3nAu8hnci8BbgwIv6nwe12SmFMLwZ2AB8mzY3varCJfwWOy9NUdzSnl9YKOnA6zMzKRNJSYE5EfL3VfbHW8R61WYlI+mNJv5enPj4KvBW4r9X9stbyP6PMymUs8B+k6803AlMj4qnWdslare7Uh6R5wBTgmYgY1yO9MjOzVzUy9TEfOKvJ/TAzsxrqTn1ExOKqf4HVNWLEiGhre11VzMz6tZUrV26PiMPby+u2Oep8U5gZAKNHj2bFihXd1bSZWZ8nqdY/e7svUEfEXGAuwMSJE33Nn1k/1HbVPa3uQkttmnVOU9r15XlmZiXnQG1mVnJ1A7WkBaR7EIzNNz2/uPndMjOzikau+ji/XhkzM2seT32YmZWcA7WZWck5UJuZlZwDtZlZyTlQm5mVnAO1mVnJOVCbmZWcA7WZWck5UJuZlZwDtZlZyTlQm5mVnAO1mVnJOVCbmZWcA7WZWck5UJuZlZwDtZlZyTlQm5mVnAO1mVnJOVCbmZWcA7WZWck5UJuZlZwDtZlZyTlQm5mVnAO1mVnJOVCbmZWcA7WZWck5UJuZlZwDtZlZyTUUqCWdJWm9pA2Srmp2p8zM7DV1A7WkAcDNwHuA44DzJR3X7I6ZmVkysIEyJwMbImIjgKRvAe8DHmtmx6xz2q66p9VdaKlNs85pdRfMul0jgfpIYEvh+ZPAKdWFJM0AZuSnOyWt73r3WmIEsL3VnejFWjp+mt2qLXcbf/66pjd//o6uldFIoG5IRMwF5nZXe60iaUVETGx1P3orj1/XePy6pq+OXyMnE7cCowrPj8ppZmbWAxoJ1MuBYyT9vqSDgA8BdzW3W2ZmVlF36iMi9kq6HLgfGADMi4h1Te9Z6/T66ZsW8/h1jceva/rk+CkiWt0HMzPrgP+ZaGZWcg7UZmYl50Bt1gBJbZLWlr3NqvbnS5rarPZbRdK9kg6pU+YBSb91mZ6k8ZLObl7vmqNfBWpJ/1L5+7ukTZJGtLpPvZGk6ZJuanU/rP+RJGBKROzoZBPjAQfqMouIv4oI//XdOmugpH+T9HNJ35F0sKRrJC2XtFbS3BxIKnt0X5a0IpefJGmhpMclXddRm7n+mZIelbRG0jxJg2ulS5ooaVVe1kj6rSsEJJ0kaZGklZLul/TmHhmxbpCPPNZL+gawFthX2cmSdHXOWyJpgaQrClU/KGmZpF9Ieke+vPhaYFoeq2kteDmd0icDtaRhku6RtDp/gabl9FqHQx/Ob+gqSV/LN6JC0k5J1+d2HpF0RE4/QtJ3c/pqSW/rqJ0yqz78lnSFpJl5/QFJs4sf9nbqnyPpYUkj8qH2jZJ+Imlj5bBbyQ35vVhTeD9ulvTevP5dSfPy+sfyuLflAHarpHWS/kvS0B4YllrGArdExLHAr4FPADdFxKSIGAcMBaYUyu/O/5KbA9wJXAaMA6ZLOqxWm5KGAPOBaRHxR6TLaD9eKz0iVkTE+IgYD9wHfKnYaUmDgK8AUyPiJGAecH13DkwPOIY0TscDmwEkTQI+AJxAumlc9Xd7YEScDHwa+FxE7AauAW7P43V7j/W+i/pkoAbOAn4VESfkL9B9tQpKOhaYBpyeP+j7gAty9jDgkYg4AVgMXJLTbwQW5fQJwLo67fRmB3zYixmS3g9cBZwdEZX7K7wZeDspYM3KaeeRDjlPAN4N3JD36B4EKsH/SNLdGclpi/P6McDN+Qu6g/TFbJUtEfFQXv8m6XW+S9JSSWuAycDxhfKVP4atAdZFxFMRsQvYyGv/9m2vzbHA/0bEL3L6bcA7O0gHIP8ATiC9J0VjST8QP5C0Cvgs6R/GvcnmiHikKu104M6IeCUiXgS+V5W/MD+uBNqa3L+m6rZ7fZTMGuCfJM0G7o6IBzsoeyZwErA8H7UOBZ7JebuBu/P6SuBP8vpk4EKAiNgHvCDpIx2005vV+rBPJu3B/GlE/LqQfkdE7AceqxyBkILPgjxW2yQtAiaRAvWnlc4bPAYcmgP4acAngcNIgWlVjT70tOophQBuASZGxJZ8JDKkkL8rP+4vrFeeV7577bX5ukkaB8wE3pnH+YBs0g/FaZ1puyRe6kSdypjvo5fHuj65R533OCaQAvZ1kq7poLiA2yqHjhExNiJm5rw98do/guq92R21U2Z7OfBzMKQqv9aH/QngDcAf1igPaUxqioitwCGkI6DFpMD9F8DOvIdU3V6rv3CjJVWC3V8CS/L6dknDgc5cYdFem+uBNkljcvpHgEW10pWugFgAXBgRz7azjfXA4ZXtSBok6fh2yvU2DwHnShqSx39KvQrAi6TPba/SJwO1pJHAyxHxTeAGUtCu5YfAVElvynXfKKnm7QYLdT6eyw+Q9LudbKcMtgFvknSY0gmrRj7skOYJPwB8o4Ev/YOkEzgDJB1OOlxflvMeIU2rVAL1FfmxjNYDl0n6OXAo8FXgVtIJrvtJ98XpcpsR8QpwEfDtPKWyH5hTK510f/ijgVvz+ZFVxQ3kudmpwGxJq4FVwNs60ddSiYjlpOmlnwHfJ+2YvVCn2o+B43rbyUQios8twJ+R3rxVpC/PxJz+QGF9EzAir0/LZX9GOrw+NafvLLQ5FZif148gnRxak+ud1lE7ZV9I0wxPkILlfGBmO+M1AtiU16eTTqIBnEiatnhLrju10O7O/CjSD+baPGbTCmUuJp1PABhEOsQ9Lz9vA9YWyl5R6ZsXLxEBMDw/HgysACa0uk/NWHyvDzPrtST9O+kk9BDS1OMXW9ylpnCgNjMruV59JhQgX4/6w3ayzoyI53q6P2XmsTLrnbxHbWZWcn3yqg8zs77EgdrMrOQcqM3MSs6B2sys5P4fMmQHbyY1aGUAAAAASUVORK5CYII=\n"},"metadata":{"needs_background":"light"}},{"output_type":"display_data","data":{"text/plain":["<Figure size 432x288 with 1 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}}],"source":["sample_files = [data_dir/'bamboozle/bamboozle_a_15.wav', \n","                data_dir/'no/01bb6a2a_nohash_0.wav',  \n","                data_dir/'right/0362539c_nohash_1.wav',\n","                data_dir/'right/b5d1e505_nohash_0.wav']\n","fstr_list = [str(f) for f in sample_files]\n","sample_ds = preprocess_dataset(fstr_list, num_silent=1)\n","count = 1\n","for spectrogram, label in sample_ds.batch(1):\n","  prediction = model(spectrogram)\n","  plt.subplot(len(sample_files)+1, 1, count)\n","  plt.bar(label_list, tf.nn.softmax(prediction[0]))\n","  plt.title(f'Predictions for \"{label_list[label[0]]}\"')\n","  plt.show()\n","  count += 1"]},{"cell_type":"code","source":["model_file = 'kws_ufe_23apr2022_2351.h5'\n","model = tf.keras.models.load_model(model_file)"],"metadata":{"id":"nCYUmyrexoR0"},"id":"nCYUmyrexoR0","execution_count":null,"outputs":[]},{"cell_type":"code","source":["last_layer = model.layers[-1]\n","print(last_layer.weights[1])\n","lyr_wts = last_layer.weights[0].numpy()\n","lyr_bias = last_layer.weights[1].numpy()\n","\n","lyr_bias[2] += 12.0\n","last_layer.set_weights([lyr_wts, lyr_bias])\n","\n","print(model.layers[-1].weights[1])"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"BU9xD3Tbx23I","executionInfo":{"status":"ok","timestamp":1650761742765,"user_tz":240,"elapsed":167,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"29484698-bbbe-4a8b-b40c-5195023df601"},"id":"BU9xD3Tbx23I","execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["<tf.Variable 'dense_1/bias:0' shape=(4,) dtype=float32, numpy=array([ 0.35417023, -0.00457756, -0.1607085 , -0.12254856], dtype=float32)>\n","<tf.Variable 'dense_1/bias:0' shape=(4,) dtype=float32, numpy=\n","array([ 3.5417023e-01, -4.5775604e-03,  1.1839292e+01, -1.2254856e-01],\n","      dtype=float32)>\n"]}]},{"cell_type":"code","source":["date_str = \"aug_\" + model_file\n","model_file_name = date_str \n","print(f\"Saving model to {model_file_name}\")\n","model.save(model_file_name, overwrite=False)\n","\n","with open(model_file_name.split('.')[0] + '.txt', 'w') as fpo:\n","    fpo.write(f\"i16min            = {i16min           }\\n\")\n","    fpo.write(f\"i16max            = {i16max           }\\n\")\n","    fpo.write(f\"fsamp             = {fsamp            }\\n\")\n","    fpo.write(f\"wave_length_ms    = {wave_length_ms   }\\n\")\n","    fpo.write(f\"wave_length_samps = {wave_length_samps}\\n\")\n","    fpo.write(f\"window_size_ms    = {window_size_ms   }\\n\")\n","    fpo.write(f\"window_step_ms    = {window_step_ms   }\\n\")\n","    fpo.write(f\"num_filters       = {num_filters      }\\n\")\n","    fpo.write(f\"use_microfrontend = {use_microfrontend}\\n\")\n","    fpo.write(f\"label_list        = {label_list}\\n\")\n","    fpo.write(f\"spectrogram_shape = {spectrogram.numpy().shape}\\n\")\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"j2KM1eLo1D97","executionInfo":{"status":"ok","timestamp":1650761744188,"user_tz":240,"elapsed":133,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"bc8085a3-c295-4ad2-a03a-b66337b38e67"},"id":"j2KM1eLo1D97","execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Saving model to aug_kws_ufe_23apr2022_2351.h5\n"]}]},{"cell_type":"markdown","id":"current-preserve","metadata":{"id":"current-preserve"},"source":["## Quantize and Convert to TFLite"]},{"cell_type":"code","execution_count":null,"id":"enclosed-government","metadata":{"id":"enclosed-government"},"outputs":[],"source":["model_file = 'aug_kws_ufe_23apr2022_2351.h5'\n","model = tf.keras.models.load_model(model_file)\n","converter = tf.lite.TFLiteConverter.from_keras_model(model)\n","converter.optimizations = [tf.lite.Optimize.DEFAULT]"]},{"cell_type":"code","execution_count":null,"id":"loved-synthetic","metadata":{"id":"loved-synthetic"},"outputs":[],"source":["num_calibration_steps = 10\n","ds_iter = val_ds.unbatch().batch(1).as_numpy_iterator()\n","def representative_dataset_gen():\n","  for _ in range(num_calibration_steps):\n","    next_input = next(ds_iter)[0]\n","    next_input = next_input.astype(np.float32)  # (DIFF_FROM_LECTURE)\n","    yield [next_input]"]},{"cell_type":"code","execution_count":null,"id":"supported-poison","metadata":{"id":"supported-poison"},"outputs":[],"source":["converter.optimizations = [tf.lite.Optimize.DEFAULT]\n","converter.representative_dataset = representative_dataset_gen\n","converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS_INT8]\n","converter.inference_input_type = tf.int8  # or tf.uint8; should match dat_q in eval_quantized_model.py\n","converter.inference_output_type = tf.int8  # or tf.uint8"]},{"cell_type":"code","execution_count":null,"id":"least-marketplace","metadata":{"id":"least-marketplace","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650761754284,"user_tz":240,"elapsed":2604,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"99f15204-2422-4a55-f53f-d7d56d47c821"},"outputs":[{"output_type":"stream","name":"stdout","text":["INFO:tensorflow:Assets written to: /tmp/tmpmdw15y06/assets\n"]},{"output_type":"stream","name":"stderr","text":["INFO:tensorflow:Assets written to: /tmp/tmpmdw15y06/assets\n","/usr/local/lib/python3.7/dist-packages/tensorflow/lite/python/convert.py:746: UserWarning: Statistics for quantized inputs were expected, but not specified; continuing anyway.\n","  warnings.warn(\"Statistics for quantized inputs were expected, but not \"\n","WARNING:absl:Buffer deduplication procedure will be skipped when flatbuffer library is not properly loaded\n"]}],"source":["tflite_quant_model = converter.convert()"]},{"cell_type":"code","execution_count":null,"id":"simplified-faculty","metadata":{"id":"simplified-faculty","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650761754285,"user_tz":240,"elapsed":11,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"855246f7-aa27-4e60-b0c2-134dcdc64d93"},"outputs":[{"output_type":"stream","name":"stdout","text":["Wrote 32600 / 32600 bytes to tflite file\n"]}],"source":["fname = 'kws_model.tflite'\n","with open(fname, \"wb\") as fpo:\n","  num_bytes_written = fpo.write(tflite_quant_model)\n","print(f\"Wrote {num_bytes_written} / {len(tflite_quant_model)} bytes to tflite file\")"]},{"cell_type":"code","execution_count":null,"id":"thorough-senegal","metadata":{"id":"thorough-senegal","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1650761761580,"user_tz":240,"elapsed":7301,"user":{"displayName":"Austen Brooks","userId":"04643783456679642380"}},"outputId":"3ce7847f-f6ca-45b0-b0ae-2e0ac375bed3"},"outputs":[{"output_type":"stream","name":"stdout","text":["\r0% [Working]\r            \rGet:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]\n","\r0% [Waiting for headers] [1 InRelease 14.2 kB/88.7 kB 16%] [Connecting to cloud\r                                                                               \rHit:2 http://archive.ubuntu.com/ubuntu bionic InRelease\n","\r0% [Waiting for headers] [1 InRelease 43.1 kB/88.7 kB 49%] [Connecting to cloud\r0% [2 InRelease gpgv 242 kB] [Waiting for headers] [1 InRelease 43.1 kB/88.7 kB\r                                                                               \rGet:3 http://archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB]\n","Ign:4 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64  InRelease\n","Ign:5 https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64  InRelease\n","Hit:6 http://ppa.launchpad.net/c2d4u.team/c2d4u4.0+/ubuntu bionic InRelease\n","Hit:7 https://cloud.r-project.org/bin/linux/ubuntu bionic-cran40/ InRelease\n","Hit:8 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64  Release\n","Get:9 http://archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB]\n","Hit:10 https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64  Release\n","Hit:11 http://ppa.launchpad.net/cran/libgit2/ubuntu bionic InRelease\n","Hit:12 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu bionic InRelease\n","Hit:13 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu bionic InRelease\n","Fetched 252 kB in 3s (90.7 kB/s)\n","Reading package lists... Done\n"]}],"source":["!apt-get update && apt-get -qq install xxd\n","!xxd -i kws_model.tflite >! kws_model.cc"]},{"cell_type":"code","execution_count":null,"id":"4f7a331e-b930-4914-8906-8e9b384b17c4","metadata":{"id":"4f7a331e-b930-4914-8906-8e9b384b17c4"},"outputs":[],"source":[""]}],"metadata":{"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"codemirror_mode":{"name":"ipython","version":3},"file_extension":".py","mimetype":"text/x-python","name":"python","nbconvert_exporter":"python","pygments_lexer":"ipython3","version":"3.8.11"},"colab":{"name":"Project_1.ipynb","provenance":[],"collapsed_sections":[]}},"nbformat":4,"nbformat_minor":5}